//
//  BN_DynamicHelper.h
//  BabyNow
//
//  Created by iMobile on 14-4-2.
//  Copyright (c) 2014年 iMobile. All rights reserved.
//

#import <Foundation/Foundation.h>

/**
 *  动态模块帮助类
 */
@interface BN_DynamicHelper : NSObject

/**
 *  班级动态列表查询完毕回调处理
 */
@property (nonatomic,strong)DataHandleComplete queryClassListCompleteHandler;

/**
 *  家长动态列表查询完毕回调处理
 */
@property (nonatomic,strong)DataHandleComplete queryParentListCompleteHandler;

/**
 *  刷新班级动态列表
 */
- (void)refreshClassList;

// add by jason yan 2014-07-26
/**
 *  刷新班级动态列表新接口
 */
- (void)newRefreshClassList;

/**
 *  刷新家长动态
 */
- (void)refreshParentList;

// add by jason yan 2014-07-26
/**
 *   刷新家长动态列表新接口
 */
- (void)newRefreshParentList;

/**
 *  获取下一页班级动态数据
 */
- (void)fetchNextPageForClass;

// add by jason yan 2014-07-26
/**
 *  获取下一页班级动态数据新接口
 */
- (void)newFetchNextPageForClass;

/**
 *  获取下一页家长动态数据
 */
- (void)fetchNextPageForParent;

// add by jason yan 2014-07-26
/**
 *  获取下一页家长动态数据新接口
 */
- (void)newFetchNextPageForParent;

/**
 *  根据编号获取详情数据
 *
 *  @param postId  动态编号
 *  @param handler 请求完毕后的回调
 */
- (void)queryDetailWithPostId:(NSString*)postId
              completeHandler:(DataHandleComplete)handler;

/**
 *  动态回复
 *
 *  @param postId   动态编号
 *  @param replCont 回复内容
 *  @param handler  回复完毕后的处理器
 */
- (void)postReplyWithPostId:(NSString*)postId
                   replCont:(NSString*)replCont
            compelteHandler:(DataHandleComplete)handler;

/**
 *  发布动态信息
 *
 *  @param sub                      标题
 *  @param postType                 动态类型
 *  @param fileMimeType             文件mime类型
 *  @param filesInfoDict            文件信息字典
 *  @param completehandler          发布完毕后的回调处理
 *  @param uploadProcessingHandler  上传进度回调处理
 */
- (void)postDynamicWithSubj:(NSString*)sub
                   postType:(ENUM_DYNAIMC_TYPE)dynamicType
               fileMimeType:(NSString*)fileMimeType
              filesInfoDict:(NSDictionary*)fileInfoDict
             completeHandler:(DataHandleComplete)completehandler
    uploadProcessingHandler:(UploadProcessingHandler)uploadProcessHandler;

/**
 *  发布动态信息
 *
 *  @param sub                      标题
 *  @param postType                 动态类型
 *  @param filesInfoArr             文件信息数组
 *  @param completehandler          发布完毕后的回调处理
 *  @param uploadProcessingHandler  上传进度回调处理
 */
- (void)postDynamicWithSubj:(NSString*)sub
                   postType:(ENUM_DYNAIMC_TYPE)dynamicType
              filesInfoArr:(NSArray*)fileInfoArr
            completeHandler:(DataHandleComplete)completehandler
    uploadProcessingHandler:(UploadProcessingHandler)uploadProcessHandler;


/**
 *  新发布动态信息
 *
 *  @param content              内容
 *  @param fileInfoArr          文件信息数组
 *  @param completehandler      发布完毕后回调
 *  @param uploadProcessHandler 上传进度
 */
- (void)newPostDynamicWithContent:(NSString*)content
                     filesInfoArr:(NSArray*)fileInfoArr
                  completeHandler:(DataHandleComplete)completehandler
          uploadProcessingHandler:(UploadProcessingHandler)uploadProcessHandler;



/**
 *  删除动态信息
 *
 *  @param postId  动态编号
 *  @param handler 删除后的回调
 */
- (void)removeDynamicWithPostId:(NSString*)postId
                completeHandler:(DataHandleComplete)handler;

/**
 *  点赞动态
 *
 *  @param postId  动态编号
 *  @param flg     标识（0：赞，1：取消）
 *  @param handler 点赞后的回调
 */
- (void)supportDynamicWithPostId:(NSString*)postId
                             flg:(int)flg
                 completeHandler:(DataHandleComplete)handler;

/**
 *  收藏动态
 *
 *  @param postId  动态编号
 *  @param handler 收藏后的回调
 */
- (void)collectDynamicWithPostId:(NSString*)postId
                 completeHandler:(DataHandleComplete)handler;


/**
 *  取消查询班级动态列表操作
 */
- (void)cancelQueryListForClass;

/**
 *  取消查询家长动态列表操作
 */
- (void)cancelQueryListForParent;

/**
 *  取消查询详情信息
 */
- (void)cancelQueryDetailInfo;

/**
 *  取消发布动态操作
 */
- (void)cancelPostDynamicInfo;

@end
